// pages/record/record.js
Page({
  data: {
    type: 'income', // 默认收入类型
    amount: '',
    note: '',
    // 初始化默认分类
    categories: ['生活费', '兼职收入', '奖学金', '临时转账', '其他'],
    categoryIndex: 0
  },
  onShow() {
    // 直接使用默认分类确保显示
    const defaultCategories = {
      income: ['生活费', '兼职收入', '奖学金', '临时转账', '其他'],
      expense: ['餐饮（食堂/外卖/零食）', '学习（教材/打印/考证）', '购物（衣物/日用品）', '娱乐（聚餐/电影/游戏）', '交通（往返/校内出行）', '其他']
    };
    this.setData({
      categories: this.data.type === 'income' ? defaultCategories.income : defaultCategories.expense
    });
  },
  switchType(e) {
    const type = e.currentTarget.dataset.type;
    // 直接使用默认分类确保显示
    const defaultCategories = {
      income: ['生活费', '兼职收入', '奖学金', '临时转账', '其他'],
      expense: ['餐饮（食堂/外卖/零食）', '学习（教材/打印/考证）', '购物（衣物/日用品）', '娱乐（聚餐/电影/游戏）', '交通（往返/校内出行）', '其他']
    };
    
    this.setData({
      type: type,
      categories: type === 'income' ? defaultCategories.income : defaultCategories.expense,
      categoryIndex: 0
    });
  },
  inputAmount(e) {
    const amount = e.detail.value;
    if (!isNaN(amount)) {
      this.setData({
        amount: amount
      });
    } else {
      wx.showToast({
        title: '请输入数字',
        icon: 'none'
      });
    }
  },
  inputNote(e) {
    this.setData({
      note: e.detail.value
    });
  },
  bindCategoryChange(e) {
    this.setData({
      categoryIndex: e.detail.value
    });
  },
  submitRecord() {
    if (this.data.amount) {
      // 获取当前日期
      const date = new Date();
      const formattedDate = `${date.getFullYear()}-${(date.getMonth() + 1).toString().padStart(2, '0')}-${date.getDate().toString().padStart(2, '0')}`;

      const app = getApp();
      if (!app.globalData.records) {
        app.globalData.records = [];
      }
      const newRecord = {
        type: this.data.type,
        amount: this.data.amount,
        category: this.data.categories[this.data.categoryIndex],
        note: this.data.note,
        date: formattedDate
      };
      app.globalData.records.push(newRecord);
      
      // 保存到本地存储
      wx.setStorageSync('records', app.globalData.records);
      
      wx.showToast({
        title: '记录添加成功',
        icon: 'success'
      });
      wx.navigateBack();
    } else {
      wx.showToast({
        title: '请填写金额',
        icon: 'none'
      });
    }
  }
});